EmSAT Achieve Exam  >  EmSAT Achieve Questions  >  #include <iostream>using namespace std;... Start Learning for Free
#include <iostream>
using namespace std;
 
class A
{
public:
    virtual void fun() { cout << "A::fun() "; }
};
 
class B: public A
{
public:
   void fun() { cout << "B::fun() "; }
};
 
class C: public B
{
public:
   void fun() { cout << "C::fun() "; }
};
 
int main()
{
    B *bp = new C;
    bp->fun();
    return 0;
}
  • a)
    A::fun()
  • b)
    B::fun()
  • c)
    C::fun()
  • d)
    None of the above
Correct answer is option 'C'. Can you explain this answer?
Most Upvoted Answer
#include <iostream>using namespace std;class A{public: virtual ...
The important thing to note here is B::fun() is virtual even if we have not uses virtual keyword with it. When a class has a virtual function, functions with same signature in all descendant classes automatically become virtual. We don't need to use virtual keyword in declaration of fun() in B and C. They are anyways virtual.
Explore Courses for EmSAT Achieve exam

Top Courses for EmSAT Achieve

Question Description
#include <iostream>using namespace std;class A{public: virtual void fun() { cout << "A::fun() "; }};class B: public A{public: void fun() { cout << "B::fun() "; }};class C: public B{public: void fun() { cout << "C::fun() "; }};int main(){ B *bp = new C; bp->fun(); return 0;}a)A::fun()b)B::fun()c)C::fun()d)None of the aboveCorrect answer is option 'C'. Can you explain this answer? for EmSAT Achieve 2025 is part of EmSAT Achieve preparation. The Question and answers have been prepared according to the EmSAT Achieve exam syllabus. Information about #include <iostream>using namespace std;class A{public: virtual void fun() { cout << "A::fun() "; }};class B: public A{public: void fun() { cout << "B::fun() "; }};class C: public B{public: void fun() { cout << "C::fun() "; }};int main(){ B *bp = new C; bp->fun(); return 0;}a)A::fun()b)B::fun()c)C::fun()d)None of the aboveCorrect answer is option 'C'. Can you explain this answer? covers all topics & solutions for EmSAT Achieve 2025 Exam. Find important definitions, questions, meanings, examples, exercises and tests below for #include <iostream>using namespace std;class A{public: virtual void fun() { cout << "A::fun() "; }};class B: public A{public: void fun() { cout << "B::fun() "; }};class C: public B{public: void fun() { cout << "C::fun() "; }};int main(){ B *bp = new C; bp->fun(); return 0;}a)A::fun()b)B::fun()c)C::fun()d)None of the aboveCorrect answer is option 'C'. Can you explain this answer?.
Solutions for #include <iostream>using namespace std;class A{public: virtual void fun() { cout << "A::fun() "; }};class B: public A{public: void fun() { cout << "B::fun() "; }};class C: public B{public: void fun() { cout << "C::fun() "; }};int main(){ B *bp = new C; bp->fun(); return 0;}a)A::fun()b)B::fun()c)C::fun()d)None of the aboveCorrect answer is option 'C'. Can you explain this answer? in English & in Hindi are available as part of our courses for EmSAT Achieve. Download more important topics, notes, lectures and mock test series for EmSAT Achieve Exam by signing up for free.
Here you can find the meaning of #include <iostream>using namespace std;class A{public: virtual void fun() { cout << "A::fun() "; }};class B: public A{public: void fun() { cout << "B::fun() "; }};class C: public B{public: void fun() { cout << "C::fun() "; }};int main(){ B *bp = new C; bp->fun(); return 0;}a)A::fun()b)B::fun()c)C::fun()d)None of the aboveCorrect answer is option 'C'. Can you explain this answer? defined & explained in the simplest way possible. Besides giving the explanation of #include <iostream>using namespace std;class A{public: virtual void fun() { cout << "A::fun() "; }};class B: public A{public: void fun() { cout << "B::fun() "; }};class C: public B{public: void fun() { cout << "C::fun() "; }};int main(){ B *bp = new C; bp->fun(); return 0;}a)A::fun()b)B::fun()c)C::fun()d)None of the aboveCorrect answer is option 'C'. Can you explain this answer?, a detailed solution for #include <iostream>using namespace std;class A{public: virtual void fun() { cout << "A::fun() "; }};class B: public A{public: void fun() { cout << "B::fun() "; }};class C: public B{public: void fun() { cout << "C::fun() "; }};int main(){ B *bp = new C; bp->fun(); return 0;}a)A::fun()b)B::fun()c)C::fun()d)None of the aboveCorrect answer is option 'C'. Can you explain this answer? has been provided alongside types of #include <iostream>using namespace std;class A{public: virtual void fun() { cout << "A::fun() "; }};class B: public A{public: void fun() { cout << "B::fun() "; }};class C: public B{public: void fun() { cout << "C::fun() "; }};int main(){ B *bp = new C; bp->fun(); return 0;}a)A::fun()b)B::fun()c)C::fun()d)None of the aboveCorrect answer is option 'C'. Can you explain this answer? theory, EduRev gives you an ample number of questions to practice #include <iostream>using namespace std;class A{public: virtual void fun() { cout << "A::fun() "; }};class B: public A{public: void fun() { cout << "B::fun() "; }};class C: public B{public: void fun() { cout << "C::fun() "; }};int main(){ B *bp = new C; bp->fun(); return 0;}a)A::fun()b)B::fun()c)C::fun()d)None of the aboveCorrect answer is option 'C'. Can you explain this answer? tests, examples and also practice EmSAT Achieve tests.
Explore Courses for EmSAT Achieve exam

Top Courses for EmSAT Achieve

Explore Courses
Signup for Free!
Signup to see your scores go up within 7 days! Learn & Practice with 1000+ FREE Notes, Videos & Tests.
10M+ students study on EduRev